#include<stdio.h>
#include<conio.h>
// Bai 2.4.a
void NhapMaTran(float a[][10], int &m, int &n)
{
	printf("\n Nhap vao so dong cua Ma Tran ");scanf("%d",&m);
	printf("\n Nhap vao so cot cua Ma Tran ");scanf("%d",&n);
	for(int i=0;i<m;i++)
		for(int j=0;j<n;j++)
		{
			printf("\n Nhap vao gia tri a[%d][%d]= ",i,j);scanf("%f",&a[i][j]);
		}

}
// Bai 2.4.b
void XuatMaTran(float a[][10], int m, int n)
{
	printf("\n\n Ma Tran cua ban la ");
	for(int i=0;i<m;i++)
	{
		printf("\n");
		for(int j=0;j<n;j++)
			printf("\t %.1f",a[i][j]);
	}
}


void NhapMaTranVuong(float a[][10], int &n)
{
	printf("\n Nhap vao so dong so cot cua Ma Tran ");scanf("%d",&n);
	for(int i=0;i<n;i++)
		for(int j=0;j<n;j++)
		{
			printf("\n Nhap vao gia tri a[%d][%d]= ",i,j);scanf("%f",&a[i][j]);
		}

}
// Cau 2
void XuatMaTranVuong(float a[][10], int n)
{
	printf("\n\n Ma Tran cua ban la ");
	for(int i=0;i<n;i++)
	{
		printf("\n");
		for(int j=0;j<n;j++)
			printf("\t %.1f",a[i][j]);
	}
}
// Cau 3
void HoanVi(float &a, float &b)
{
   float tam = a;
   a = b;
   b = tam;
}
// Cau c 
void HoanVi_2Dong(float a[][10], int dong1, int dong2, int n)
{
	printf("\n Nhap vao dong thu 1 can hoan vi = ");scanf("%d",&dong1);
	printf("\n Nhap vao dong thu 2 can hoan vi = ");scanf("%d",&dong2);
	if((dong1>=0 && dong1<n)&&(dong2>=0 && dong2<n))
      for(int j=0;j<n;j++)
         HoanVi(a[dong1][j],a[dong2][j]);
}
// Cau d

void ThayTong_2Cot(float a[][10], int cot1, int cot2, int n)
{
	printf("\n Nhap vao cot thu 1 can chon = ");scanf("%d",&cot1);
	printf("\n Nhap vao cot thu 2 can chon = ");scanf("%d",&cot2);
	if((cot1>=0 && cot1<n)&&(cot2>=0 && cot2<n))
      for(int i=0;i<n;i++)
         a[i][cot1] = a[i][cot1]+a[i][cot2];
}
// Cau e 

void Xoa_1_Dong(float a[][10], int &m,int &n,int &dong)
{
	m=n;
	printf("\n Nhap vao ten dong can xoa ");scanf("%d",&dong);
	for(int i=dong;i<m-1;i++)
      for(int j=0;j<n;j++)
         a[i][j]=a[i+1][j];
	m--;
} 
void Xoa_h_Dong(float a[][10], int &m,int &n,int &dong, int &h)
{
	m=n;
	printf("\n Nhap vao ten dong can xoa ");scanf("%d",&dong);
	printf("\n Nhap vao so dong ban muon xoa ");scanf("%d",&h);
	for(int i=dong;i<m-h;i++)
      for(int j=0;j<n;j++)
         a[i][j]=a[i+h][j];
	m=m-h;

}
// Cau g
void Chen_1_Dong(float a[][10], int &m,int &n,int &dong)
{
	m=n;
	printf("\n Nhap vao vi tri ten dong can them ");scanf("%d",&dong);
	for(int i=m;i>dong;i--)
      for(int j=0;j<n;j++)
         a[i][j]=a[i-1][j];
	// khoi tao lai gia tri cua dong moi them =0
	for(int j=0;j<n;j++)
	{
		printf("\n Nhap vao phan tu dong %d la ",dong);scanf("%f",&a[dong][j]);
	}
	m++;
} 
void main()
{
	int n,m, dong, h, dong1,dong2, cot1, cot2;
	float a[10][10], b[10][10], c[10][10];
	NhapMaTranVuong(a,n);
	XuatMaTranVuong(a,n);
	//HoanVi_2Dong(a,dong1,dong2,n);
	//XuatMaTranVuong(a,n);
	//ThayTong_2Cot(a,cot1,cot2,n);
	//XuatMaTranVuong(a,n);
	//Xoa_1_Dong(a,m,n,dong);
	//XuatMaTran(a,m,n);
	//Xoa_h_Dong(a,m,n,dong,h);
	//XuatMaTran(a,m,n);
	Chen_1_Dong(a,m,n,dong);
	XuatMaTran(a,m,n);
	
	
	getch();
	
}